System and method for utilizing EPG database for modifying advertisements

ABSTRACT

A system and method for utilizing data stored in an EPG database for modifying advertisement information. In this way, a service provider and/or an advertiser can transmit a single advertisement to all the television stations regardless of their geographic location and other user specific information, and need not re-transmit the advertisement even if there is a change in the show&#39;s program description. When the advertisement is displayed, the correct updated information is retrieved from the EPG database and inserted into the advertisement. 
     In one aspect, the present invention describes a method for modifying an advertisement in an EPG comprising the steps of: storing television schedule information in a first database; storing advertisement information in a second database; incorporating a portion of the television schedule information into a portion of the advertisement information to form a modified advertisement; and displaying the modified advertisement on a screen.

CROSS-REFERENCE TO RELATED APPLICATIONS

This patent application is a continuation of U.S. patent applicationSer. No. 09/604,038, filed on Jun. 27, 2000 now abandoned, entitled“SYSTEM AND METHOD FOR UTILIZING EPG DATABASE FOR MODIFYINGADVERTISEMENTS,” and claims the benefit of the filing date of U.S.Provisional Patent Application Ser. No. 60/141,331, filed Jun. 28, 1999and entitled “SYSTEM AND METHOD FOR UTILIZING EPG DATABASE FOR MODIFYINGADVERTISEMENTS,” the entire contents of which are hereby expresslyincorporated by reference. This application is also related to the U.S.application Pat. No. 6,177,931, issued Jan. 23, 2001 and entitled“SYSTEMS AND METHODS FOR DISPLAYING AND RECORDING CONTROL INTERFACE WITHTELEVISION PROGRAMS, VIDEO, ADVERTISING INFORMATION AND PROGRAMSCHEDULING INFORMATION,” the contents of which are hereby expresslyincorporated by reference.

BACKGROUND OF THE INVENTION

The present invention relates to receiving and displaying advertisementsin an Electronic Program Guide (EPG). More specifically, this inventionis directed to a system and method for utilizing data stored in an EPGdatabase for modifying advertisement information.

U.S. Pat. No. 6,177,931, issued on Jan. 23, 2001, the contents of whichare hereby expressly incorporated by reference, discloses an electronicprogram guide (EPG) with panel ad windows and channel ad tiles fordisplaying advertisement information. Typically, the advertisementinformation relates to future-scheduled television programs. Forexample, NBC might present a panel or tile advertisement of its show“Friends,” as being shown every Thursday night on the local NBC channel.

Certain information in the advertisement, however, may vary each timethe advertisement is transmitted, or differ based on the location of thereceiving television system. For instance, “Friends” might be shown at8:00 pm in California, but at 7:00 pm in Chicago. Thus, an advertisementdisplayed on a television system in California might read: “WatchFriends every Thursday night at 8:00 pm,” while the advertisement inChicago might state the same information (text and/or graphics), exceptthat the airing time of the show will be different. Thus, for each ofthe different time zones, a service provider must create and transmit adifferent advertisement with the appropriate time information.

In addition to the above, the program description of an episode of aseries of programs might differ on a daily, weekly, or bi-weekly basis.In such an instance, the service provider must transmit a newadvertisement with updated program description information each timethere is a change in the program description. Also, portions ofinformation related to other ads, such as promoting a product or servicemay vary according to time zone, geographical regions, user preferences,and the like. Therefor, in the case of product/service advertisements,the service provider must also transmit a new advertisement with updatedinformation each time there is a change in the price, telephone number,web site address, dates of promotions, and the like.

When advertisement information is transmitted via vertical blankinginterval (VBI) signals which is a limited commodity, it is desirable tominimize the amount of advertisement information transmitted. With lesstransmitted information, the television systems that receive theinformation will also expend less memory in storing the information.

SUMMARY OF THE INVENTION

The present invention addresses and alleviates the above-mentioneddeficiencies associated with the prior art. More particularly, thepresent invention comprises a system and method for utilizing datastored in an EPG database for modifying advertisement information. Inthis way, a service provider and/or an advertiser can transmit a singleadvertisement to all the television stations regardless of theirgeographic location and other user specific information, and need notre-transmit the advertisement even if there is a change in the show'sprogram description. When the advertisement is displayed, the correctupdated information is retrieved from the EPG database and inserted intothe advertisement.

In one aspect, the present invention describes a method for displayingan advertisement in an EPG including the steps of: storing televisionschedule information in a database; receiving advertisement information;combining a portion of the received advertisement information with aportion of the stored television schedule information; and displayingthe combined information in the EPG on a screen. In another aspect, thepresent invention describes a method for modifying an advertisement inan EPG comprising the steps of: storing television schedule informationin a first database; storing advertisement information in a seconddatabase; incorporating a portion of the television schedule informationinto a portion of the advertisement information to form a modifiedadvertisement; and displaying the modified advertisement on a screen.

BRIEF DESCRIPTION OF THE DRAWINGS

The objects, advantages and features of this invention will become moreapparent from a consideration of the following detailed description andthe drawings in which:

FIG. 1 is an exemplary illustration of an EPG display according to oneembodiment of the present invention;

FIG. 2 is an exemplary remote controller according to one embodiment ofthe present invention;

FIG. 3 is an exemplary illustration of a pre-established time listaccording to one embodiment of the present invention;

FIG. 4 is an exemplary illustration of a show information packageaccording to one embodiment of the present invention;

FIG. 5 is an exemplary illustration of a program schedule organizationaccording to one embodiment of the present invention;

FIG. 6 is an exemplary illustration of a channel data table according toone embodiment of the present invention;

FIG. 7 is an exemplary illustration of a show list according to oneembodiment of the present invention;

FIG. 8 is an exemplary illustration of show title entries according toone embodiment of the present invention;

FIG. 9 is an exemplary illustration of show description entriesaccording to one embodiment of the present invention;

FIG. 10 is an exemplary illustration of a scheduling component ofadvertisement data packets according to one embodiment of the presentinvention;

FIG. 11 is an exemplary illustration of a program component ofadvertisement data packets according to one embodiment of the presentinvention; and

FIG. 12 is an exemplary illustration of how information is retrievedfrom the database according to one embodiment of the present invention.

DETAILED DESCRIPTION OF THE INVENTION

The present invention describes a system and method for utilizing datastored in an EPG database for updating advertisement information so thata single advertisement can be transmitted to all or many of thetelevision stations regardless of their geographic location, andspecifics of the advertisement. Before the transmitted advertisement isdisplayed, the updated airing time, program description, price, point ofsales, and the like information is retrieved from the EPG database andinserted into the advertisement.

Although in the described embodiment, the airing time information andprogram description information might be modified, a person skilled inthe art should recognize that any other advertisement data, such asgraphics and any other text data, may be modified based on informationstored in the EPG database. Furthermore, the advertisements modified maynot only pertain to future or current television programs, but may beadvertisements for any type of products or services.

Alternatively, the updating information may be transmitted in real timeto the television system at the time the advertisement is displayed. Inone embodiment, a portion of the advertisement information (e.g., the adcontent) is transmitted in real time while another portion of theadvertisement information, such as program information, program time, adrotation information, and/or web site addresses are retrieved from theEPG database and are combined with the received advertisementinformation before a complete advertisement is displayed. Additionally,the advertisement content, including text and graphics may betransmitted in real time and be combined with EPG data before theadvertisement is displayed.

FIG. 1 is an exemplary illustration of an EPG display. The EPG isdisplayed on a television screen generated by a conventional televisionreceiver with interlaced scan lines. Alternatively, the display may begenerated by a VCR or PC monitor with progressive scan lines. Two panelad windows with advertisement information are located on the left sideof the screen, and occupy about 1/9 of the total screen. The remainderof the screen area is typically occupied (moving from top to bottom ofthe screen) by an action key bar, an information box, navigation bar,and a grid guide. The grid guide includes a plurality of program tileswith program scheduling information. The grid guide might also compriseadvertisement tiles also including advertisement information, as shownin FIG. 1. U.S. application Pat. No. 6,177,931, mentioned above,provides a more detailed description of the grid guide includingpanel/tile advertisements and Internet connections.

Briefly, the EPG displays detailed information relevant to programlistings in a detailed information area of a Grid Guide. The detailedinformation can include, a detailed textual description of the program,information about the actors and actresses, information about theproduction of the program, product related information, identificationof relevant Internet web sites and online Internet chat rooms. The EPGprovides the viewer with the ability to request detailed informationfrom such guides/data services in a number of ways, including when theviewer highlights: a particular program in the Grid Guide, the AdWindow, or a Virtual Channel Ad Slot. In one embodiment, the viewer'sremote control device has a power “Information” key. When the viewer hasnavigated the on screen highlighting/cursor to a particular tile orwindow on the EPG on screen display, the viewer can press the remotecontrol device “Information” key to request the additional information.

In one embodiment, when the viewer highlights a particular program inthe Grid Guide, the Ad Window, or a Virtual Channel Ad Slot, or otherrequests to access detailed program-related information, the EPGconnects the viewer with an external database of information, such aswith a particular web site on the Internet. The viewer can instruct theEPG to connect the user with detailed specialized informationguides/data services, such as sports, news, or other guides/dataservices. In one embodiment, the linking to the external data source isaccomplished by storing a web site address (Uniform Resource Locator,‘URL’) with the Ad Window or Virtual Channel Ad Slot advertisement inthe RAM of the user terminal. This web site address may be modified inthe RAM, while the ad content and/or graphics stays the same. Forexample, if a web site address for a vendor is changed while the productand its description may stay the same, the ad content remains unchangedin the advertisement database, while only the new web site address istransmitted to be combined and displayed with the ad information.

A sports program listed in the Grid Guide provides an illuminatingexample of how the viewer interacts with such a detailed specializedinformation guide/data service. When the viewer highlights a footballgame listed in the Grid Guide, the normal detail concerning the programis displayed in the detailed information are of the Grid Guide.Furthermore, multiple icons related to the highlighted program can bedisplayed in the Grid Guide. One icon alerts the user that the game isalready underway. Another icon indicates the availability of specializedguide information. The viewer can select the program from the Grid Guidefor viewing and/or recording. In addition, the viewer can select thespecialized guide icon. In the case of a sports program, selecting thespecialized guide icon would display, for instance, a scoreboard for thegame if the game were already in progress in the detailed informationarea of the Grid Guide. If the game were scheduled for a future time,then selecting the specialized guide icon would display, for instance,information about the players, the teams, and perhaps, the odds aboutthe game.

Another icon including one or more URLs, displayed for instance in thedisplay of the sports guide scoreboard, provides the viewer with theoption of connecting to the Internet, for example, to a particular website that provides additional information about the game, possibly,including online chat about the game. In one embodiment, the EPGswitches to full screen to display of the Internet web site. In anotherembodiment, the EPG displays the Internet web site in the area of thescreen previously occupied by the Grid Guide and/or the Grid Guide andthe Ad Window, while continuing to display the real time video displayof the currently tuned television program in the PIP window.Alternatively, the EPG can display the Internet web site in the PIPwindow and display the currently tuned television program in the area ofthe screen previously occupied by the Grid Guide and/or the Grid Guideand the Ad Window. The Internet web site to which the EPG initiallyconnects (the “contact web site”) may be a specialized directory, usingpre-determined hyperlinks to the viewer to other cites of interest. Thecontact web site may additionally, or in the alternative, offer searchcapabilities to the viewer to locate information of interest.

Once the viewer is connected with a specialized information guide/dataservice, the viewer can use the guide/data service to direct the viewerto particular information contained in the EPG Grid Guide. For instance,a viewer selects a news program to watch and while watching the newsprogram, the news broadcaster describes an event involving astronauts.The viewer selects the news guide/data service icon and connects to aweb site on the Internet describing, among other things, additionalinformation about the particular event involving the astronauts. Theviewer may also use the search engine offered by the contact web site tolocate additional information about the same astronauts. At thesubsequent web sites, a Discovery Channel program is mentionedconcerning some of the same astronauts. The viewer can instruct the EPGto locate any occurrence of the referenced program and to schedule thatprogram to be recorded. In one embodiment, a PLUS CODE-like address isused to link to, or record, the scheduled program.

The viewer can search an index, available on the Internet and created bya news data service, of recorded television news programs and reports.If the viewer selects one of the indexed reports, a video clip of theindexed report is shown in the area on the screen occupied by theInternet web site display, or any alternate area or portion of theon-screen display. The viewer can instruct the EPG to record the videoclip.

The EPG is capable of integrating additional information provided by thespecial data services into the EPG display. For instance, in the case ofa sports data service, the EPG can format the program listing displayand/or the sports scores for a game with special color coding dependingupon the stage of the game. For instance, if the game is in progress,the EPG formats the program listing and/or the sports scores for thatgame with one color, e.g., green; if the game is completed, the programlisting and/or the final scores can be in a different color, e.g., blue.If the game is in progress, the viewer can highlight and select the boxscore to move from the box score to the game shown on the television. Inone embodiment, the selected television sports program appears in thePIP Window or the Ad Window, allowing the viewer to read the sportsprogram-related story in the sports guide while watching thecorresponding television sports program.

The EPG is further capable of linking between news items in a specialnews guide and related television programs. The viewer can link to anews program to watch or record that program by highlighting andselecting a news item in a news guide. In one embodiment, the selectedtelevision news program appears in the PIP Window or the Ad Window,allowing the viewer to read the story in the news guide while watching atelevision news program that reports on the event.

In one embodiment, the VBI for selected channels is dedicated to thedelivery of a special data service. For instance, the ESPN VBI wouldcarry the sports data service only. In one embodiment, as an incentiveto carry this data, the data service would display the ESPN Televisionprogram in the PIP window. Since the tuner must be set to ESPN tocapture the data, the television signal is available for display in thePIP.

The EPG provides producers of infomercials with extended capabilities toreach the viewers through the Ad Window. Because of the cost of buyingadvertising time, a growing number of product manufacturers andmarketers produce infomercials about their products and then buyrelatively inexpensive air time for their infomercials according tooff-prime-time schedules, often on non-prime channels. The EPG providesthe producers of infomercials with the opportunity to provide the viewerwith the opportunity to record an infomercial that is broadcast at atime, or on a channel, that would be inconvenient for the viewer towatch real-time.

If the Ad Window displays information about a particular product,pressing a record button instructs the EPG to record an infomercial oradvertisement, to the extent that one is scheduled for a future time.Alternatively, the viewer can designate the infomercial or advertisementfor the Watch List. Moreover, the EPG may provide the producers ofinfomercials with the opportunity to provide the viewer with theopportunity to view a video clip about the product being advertised.

In one embodiment, the video clip associated with the product and/orprogram displayed in the Ad Window is shown when the viewer highlightsthe Ad Window. Depending upon the embodiment and/or viewer optionselections, the video clip is shown in the PIP window, in the Ad Window,or full screen. At the conclusion of the video clip, the EPG typicallyreturns to the mode in which the viewer was operating immediately beforeselecting the option that triggered the display of the video clip.

The EPG provides distributors of television programming with additionalopportunities to reach the viewer. The Ad Window can display informationabout a future-scheduled television program. If the viewer is interestedin recording the program, the viewer can take a number of alternativeactions. For instance, in one embodiment, the viewer can instruct theEPG to record the future-scheduled program. Additionally, the viewer caninstruct the EPG to add program to the Watch List. Alternatively, theviewer can instruct the EPG to display a video clip about the program.Yet further, the viewer can instruct the EPG to connect the user withdetailed specialized information guides/data services, such as sports,news, or other guides/data services. The EPG provides the viewer withthe ability to request detailed information from such guides/dataservices in a number of ways, including when the viewer highlights: aparticular program in the Grid Guide, the Ad Window, or a VirtualChannel Ad Slot. In one embodiment, the EPG displays relevant detailedinformation in the detailed information area of the Grid Guide. Inanother embodiment, the EPG connects the viewer with an externaldatabase of information, such as with a particular web site on theInternet.

In one embodiment, Panel ads occupy a fixed area in the Guide and aregenerally filled with paid advertisements. As shown in the exemplaryillustration of the EPG of FIG. 1, located directly below the PIP in anAd Window, space is available in the Guide for two Panel ads. Each Panelad occupies approximately 1/9th of the total screen area. When a givenad space is not sold, the space may be filled with a Placeholder ad,stored in ROM, and inserted in the available space, or with a bonus ad.

In one embodiment, all Guide screens are made up of “hard pages.” A hardpage is defined as an area comprising 9 channel slots. Each time a userscrolls below the 9*x channel slot, a new “hard page” appears. Scrollingback up brings the previous hard page back into view. Each hard page mayhave different Panel ads associated with it. In one embodiment, Hardpages are defined differently in the Sort screens. Each sort category(e.g. Movies, Sports, Children's) is considered one hard page regardlessof the number of items in the list vertically. As the user moveshorizontally from one category to the next, the Panel ads also changes.

The number of hard pages available depends on the size of the user'slineup and the number of channels turned on or off. In the event thatthere are not enough channels to support the number of hard pagesrequired for the number of Panel ads sold, not all Panel ads aredisplayed. For example, assume that 4 pairs of Panel ads and 4 Channelads are saved in memory. Additionally, assume a particular user has 20active channels in his channel lineup. Then the ads would be displayedas follows:

-   -   Panel ad Pair 1 with channels 1-8 and the first Channel ad    -   Panel ad Pair 2 with channels 9-16 and the second Channel ad    -   Panel ad Pair 3 with channels 17-20 and the third and fourth        Channel ads

If the user turns on more channels requiring the addition of a fourthhard page, then the fourth Panel ad Pair becomes visible.

In one embodiment, the user can highlight these ads, resulting in theautomatic display of an expanded information box. This expandedinformation box may cover the entire right-hand ⅔rds of the grid. Theuser closes the expanded information box by moving the highlight off thePanel ad or by pressing the information button after the last relatedinformation box screen has been presented. In one embodiment, there canbe multiple information “screens” displayed sequentially in the expandedinformation box. Pressing the Info. button while an ad is highlightedaccesses these additional screens. There is no finite limit to thenumber of additional screens; memory limitations and sellingrequirements limit this number.

In one embodiment, if a Panel ad is highlighted, has show informationassociated with it, and the advertised show is currently on, the usermay tune directly to the related program by pressing a button. Pressingthe button also places the show in a Record/Watch Schedule for theduration of the show to allow the user to set the frequency to daily orweekly. If the show is not currently on, pressing a button places theshow in the Record/Watch Schedule or; pressing another button tunes tothe channel related to the show in the ad. Shows added to theRecord/Watch Schedule may be set to be viewed: once, daily, or weekly.The Watch feature and the related Action button labels operate in thesame way as if scheduling a show to watch from the Grid.

In one embodiment, if a Panel ad has show information associated withit, the show may be recorded by highlighting the ad and pressing anAction button. If the show is on now, recording begins immediately andthe show is placed in the Record/Watch Schedule for the duration of theshow to allow the user to set the frequency to daily or weekly. If theshow is on in the future, that show is added to the Record/WatchSchedule for auto-recording. Shows added to the Record/Watch Schedulemay be set to be recorded: once, daily, or weekly. The Record featureand related Action button labels operate in the same way as ifscheduling a show to record from the Grid.

In one embodiment, Panel ads can be dynamic. There are two areas whichmay be dynamic: 1.) the Panel ad space; and/or 2.) the Information box.The Panel ad area may change over time, e.g., every x seconds rotatingthrough a plurality of different graphical or textual ad executions inthe Panel ad space. When a Panel ad is highlighted, the ad rotationstops on the currently displayed ad visual. The dynamic rotation doesnot restart until the Panel ad is de-highlighted.

The information box text associated with the Panel ad may change overtime, e.g., every y seconds, rotating through a plurality of differentscreens of text. The screen rotation stops if the user presses the Info.button, displaying the first page of info. text. This option isavailable for advertisers to rotate different headlines in theinformation box. The user may view subsequent pages by pressing theInfo. button again. The screen rotation does not restart until after thePanel ad is de-highlighted.

In one embodiment, the EPG provides producers of infomercials withextended capabilities to reach the viewers through Virtual Channel AdSlots, also referred to as Channel ads. Virtual Channel Ad Slots appearas rows of the Grid Guide and typically show the titles of the programsthat are scheduled for a particular channel. The EPG Grid Guide'sVirtual Channel Ad Slots provide advertisement to be displayed as a rowin the Grid Guides schedule of programs. The Virtual Channel Ad Slotsmay be used to provide multiple exposures of a particular program in theguide. The Virtual Channel Ad Slots act like a channel entry in the GridGuide in that the viewer can record, watch, schedule for watching,and/or get information about the advertised program in the informationdetail box of the Grid Guide.

In FIG. 1, the “MTV” tile shows an example of a Virtual Channel Ad Slotfor an ad for a television program—it is a program listing that is outof place channel-wise and time-wise in the Grid Guide. That is, it doesnot appear in the usual channel position or time position in the guide,but the tile is otherwise like the other program listing tiles of gridguide (including height), except that it occupies the entire width ofthe tile irrespective of the duration of the program. A tile for anormal program listing scrolls off the screen as the up and down arrowkeys are pressed. In contrast, in one embodiment, a Virtual Channel AdSlot, such as shown, remains on the screen at all times as the up anddown arrow keys are pressed, so the ad remains in view at all times inthis embodiment.

Channel ads typically do not occupy a fixed area. Channel ads areessentially inserted between channels in the grid. If there are noChannel ads sold, the grid is simply a continuous list of channels/showtiles with no gaps. As these channel ads take up a channel slot in thegrid, it is desirable to limit how many are likely to appear on any onescreen to ensure the Guide is a useful source of Television programminginformation. Typically, there is approximately 1 Channel ad per hardpage. Channel ads are typically the height of a channel slot, the widthof the grid and are intermingled with the channel listings. There areseveral types of Channel ads, including: Relative, Parent, and Fixedposition Channel ads.

Relative Channel Ads appear in a position relative to the top of thegrid and are spaced every n channel slots, where n is some number. Theseads appear and disappear as the user pages through the Guide's hardpages. A location for the first ad can be selected on the first page andsubsequent ads follow every n channel slots. The same ad is repeatedevery n^(th) slot. This method of repeating every n^(th) channel slot istrue for both PIP and non-PIP versions. Typically, as a user turnschannels off, the spacing of these ads remains constant (every n channelslots). In the event that there are not enough channels to continue thisspacing, ads appear at the end of the grid listings.

Parent Channel ads are related to a specific channel located directlyabove the ad. A Parent Channel ad is attached to its adjacent “parent”channel (that is, the ad follows the parent channel). As it is desirableto limit the number of Channel ads seen on any one screen, the number ofParent ads are typically limited. Additionally, if the parent channel isturned off, the ad is typically displayed at the bottom of the grid.Fixed Position Channel ads are located in one specific location, y(where y is some number) channels down from the top of the grid. If y isgreater than the number of channels in the grid, the ad will be locatedat the end of the grid.

In one embodiment, Channel ads page vertically along with the channellisting information. These ads remain in a fixed position when the gridis scrolled horizontally. The user can highlight these Channel ads justas any show title can be highlighted. When highlighted, these Channelads display additional information in the info. box just as when anychannel is highlighted.

Channel ads are typically surrounded by bevels just like any show tile.Channel ad highlighting is typically similar to Panel ad highlighting.In one embodiment, when a user highlights a Channel ad, the bevelschange to a flat (non-beveled) yellow border. When a Channel ad show isset to record the border turns red (dark red when not highlighted,light/bright red when highlighted). When a Channel ad show is scheduledto watch, the border turns orange (dark orange when not highlighted,light/bright orange when highlighted). In one embodiment, Channel adscan have multiple, sequential info. box “screens” of information. Theavailability of this additional information is indicated by an “i” icon.The user can access the additional information by pressing the info.button. Channel ads can be dynamic.

In one embodiment, when the Guide is first setup, the initial downloadof information will not have been received. The Panel ad spaces arefilled with Placeholder ads that are stored in ROM. These ads aretypically “timeless” as they appear each time a Television is set up,either for the first time or after a power outage. One use for the Panelad space is for help text. Help text that draws the user to select thead space could serve as a “tutorial” on how to access Panel ads, theadditional information on info. screens, and how to Watch and Recordfrom ads.

When the viewer first enters the EPG, the EPG can display a full screenad, such as an ad that would be displayed in the Ad Window. The viewercan interact with the full screen ad in the same manner in which theviewer can interact with the Ad Window. That is, the viewer can instructthe EPG to record, or to add to the watch list, the infomercial orprogram, if there is one, that is associated with the advertisement.

Rather than have the last channel watched as the first channel tuned thenext time that the viewer turns on the television, a channel selected bythe viewer could be automatically tuned. In one embodiment, the viewerindicates the Automatic watch channel in the Watch List Function of theEPG. In another embodiment, a broadcaster sends an on-screen query toeach viewer to enter a command if the viewer wants the broadcaster'schannel to be the first watched channel when the viewer first turns onthe television.

Ads may feature, among other things, a graphics field, a text field or acombination of a graphics and text field. In one embodiment, the viewercan interact with the ads and the television. For instance, Tune-in adsallow the viewer to tune directly to a show in progress from ahighlighted ad block assuming the ad block has program informationassociated with it. An in-progress show associated with an ad isdirectly tuned by pressing a button.

Direct-record ads allow the user to record a show in progress orscheduled to be on in the future from a highlighted ad block. There isno practical limit on how far into the future a direct-record associatedshow may be scheduled to air. A show associated with an ad is recordedby pressing an Action button while the ad is highlighted. The user mayselect a record frequency of once, daily or weekly. From an ad, the userpresses the Action button to place the show in the Record Schedule. Inthe event that the show is currently on, pressing the Action buttonwhile highlighting an ad allows recording of the show in progress. Theshow title is also placed in the Record Schedule until the show ends inthe event the user wishes to modify the record frequency to daily orweekly.

Watch ads consist of a program advertised in any ad space. The programadvertised may be placed into the Watch Schedule as long as the ad blockhas program information associated with it. There is no practical limiton how far into the future an associated show may be scheduled to air.The Watch feature operates much the same way as the Record feature,except that it tunes the Television to the show rather than recordingit. If a user is watching Television, the channel automatically changesto a show placed in the Watch Schedule when the show begins. If theTelevision is turned off when a show in the Watch Schedule is scheduledto begin, the Television is turned on and tuned to the desired channel.

The user may select a watch frequency of once, daily or weekly. From anad, the user presses an Action button to place the show in the WatchSchedule. In the event that the show is currently on, pressing theAction button while highlighting an ad results in tuning directly to theshow. The show title is also placed in the Watch Schedule until the showends in the event the user wishes to modify the watch frequency to dailyor weekly.

Ads may have multiple levels of information. Typically, First LevelInformation is the ad copy and/or graphics that are presented on screenwith no user action. This comprises the Panel and Channel ad areas.Typically, Second Level Information (if provided by the advertiser) isautomatically made visible (“Auto-Open”) when the user highlights an adblock by scrolling onto it. This secondary information is presented inthe info. box when a Channel ad is selected and in an automaticallyexpanded version of an info. box that covers the entire channel gridarea when a Panel ad is highlighted. An “i” icon on the ad, placed atthe advertiser's discretion, indicates there is more informationavailable for that ad. The second level information may be text and/orgraphics depending on memory availability.

Typically, Third Level Information (if provided by the advertiser)availability is indicated by the info. button “i” on a Second Levelinformation screen. Pressing the info. button accesses this informationand cause the information box to expand for Channel ads to cover theentire grid area. This information can be multiple pages long. Pressingthe info. button successive times cycles the user through the multiplepages. Pressing the info. button from the last available screen causesthe information box to contract to its original size for all ads. Thethird level information may be text and/or graphics depending uponmemory capabilities.

Ad Blocks can be dynamic. Memory permitting, the Panel ad graphicsand/or text and information box text may change every X (where X is somenumber) seconds rotating through a limit of N (where N is some number)different graphical or textual executions. There is the capability tolimit the number of dynamic ads displayed at any one time.

Ad duration and start time/end time can be scheduled and/or dynamic. Inone embodiment, ads are to be displayed at a given start time with arelated end time. The time between the start and end is the ad'sduration. The minimum duration increment is typically 60 seconds. In oneembodiment, an ad is not replaced automatically when an ad's end timearrives. Ads only change when the user's actions cause a new “hardpage,” or new section of the guide to appear (e.g., going from the Gridto Sort).

In one embodiment, ads can rotate. For example, different ads can appeareach time the user enters the same page/section of the Guide. There isno hard limit on the number of ads placed in rotation. Ads can beassigned a priority with the ad of the highest priority being displayedthe first time a hard page or section is accessed. Then the secondpriority ad is displayed the next time the user views this page and soforth. The priority counter is page dependent, meaning that if the userviews the first page for a third time, they see the third priority ad onthat page and if they then scroll to the second page for the first time,they see the first priority ad on the second page.

Ads may differ by the section of the Guide being viewed. For example, ifa user is viewing the Sports theme area, an ad for ESPN Sports Centermay appear, whereas a different ad was presented when the user was onthe main grid.

The EPG can determine which advertisements to display depending upon theadvertisement being displayed on the television channel that the viewerwas watching immediately before entering the EPG. That is, if a Toyotaadvertisement was being shown on the channel that the viewer waswatching at the time that the viewer entered the EPG, then the EPG canbe timed to display a correlative Toyota advertisement in some portionof the EPG, e.g., the Ad Window.

In one embodiment, the EPG tests a Viewer Profile to determine which adto display at various times during the viewer's session with the EPG.The EPG can assign Ad and Page priorities to represent the advertisers'investment and the relative viewer's profile.

Graphically dynamic ads typically present different graphics every xseconds (where x is some number, with x as small as 1.0 second) rotatingthrough n (where n is some number) graphical or textual executions.Typically, only a limited number of these ads are displayed at any onetime (likely a maximum of 1 per screen) as busy screens decrease theeffectiveness of the ads and the utility of the Guide. Ads must be“identifiable” and “accessible” once placed in memory in order to allowadvertisers to “pull” an ad, to update an ad, or to correct errors intransmission.

The viewer can highlight the Ad Window to locate additional informationabout the product advertised. In one embodiment, the viewer highlightsthe Ad Window by pressing the arrow/directional navigational keys of theremote control device to navigate the remote control device pointer tothe location of the Ad Window on the on-screen television monitordisplay. When the remote control device pointer is located at the AdWindow on the on-screen television monitor display, the on-screendisplay of the Ad Window is highlighted. Alternatively, the EPG providesthe producers of infomercials with the opportunity to provide the viewerwith the opportunity to view a video clip about the product beingadvertised.

The Ad Window can be optionally interactive. The Internet address of aweb site containing information relevant to the ad being displayed inthe Ad Window can be displayed in the Ad Window as a web site address,as an icon, or in some other graphical presentation, such as a stylized“i” indicating additional interactive information. Furthermore, theviewer's interaction with the Ad Window is monitored by the EPG torecord as part of the viewer's profile.

The EPG provides viewers the opportunity to access extended productinformation about which the viewer is interested. Because of the cost ofbuying advertising time, a growing number of product manufacturers andmarketers produce infomercials about their products. Because of the costof air-time, many manufacturers and marketers buy relatively inexpensiveair time for their infomercials according to off-prime-time schedules,often on non-prime channels. The EPG provides the viewer the opportunityto record an infomercial that is broadcast at a time, or on a channel,that would be inconvenient for the viewer to watch real-time. If the AdWindow displays information about a particular product, pressing arecord button instructs the EPG to record an infomercial, to the extentthat one is scheduled for a future time. Alternatively, the viewer candesignate the infomercial for the Watch List.

The EPG provides viewers with additional opportunities to instruct theEPG to record or watch a future-scheduled television program. The AdWindow can display information about a future-scheduled televisionprogram. If the viewer is interested in recording the program, theviewer can instruct the EPG to record the future-scheduled program. Inone embodiment, the viewer presses record button on the remote controldevice to instruct the EPG to record the future-scheduled program.Alternatively, the viewer can instruct the EPG to add program to theWatch List. Additionally, the viewer can view a video clip about theprogram.

In one embodiment of the invention, a data base of advertising messagesand virtual channel ads is stored in RAM at the viewer terminal or isaccessible at a web site if the viewer terminal has an Internetconnection. In either case, the advertising items in the data base arelabeled with coded categories that correspond to coded category labelsassigned to the telecast television programs. (Preferably, these are thesame categories that are used to sort the programs in the on screencategory or theme guide.) The category labels of the television programscould be stored in RAM as part of the EPG data base and retrieved fromthe applicable Show Information Package (“SIP”) based on the informationfrom the real time clock and the tuner setting. This informationidentifies a time and channel that points to the applicable SIP. Afterthe category label of the last program the viewer was watching in thetelevision mode is retrieved from the EPG data base, this label ismatched to the corresponding label in the data base of advertisingmessages and virtual channel ads stored in RAM.

The EPG uses a Viewer Profile information in connection with“adjacent-content” customization of the advertising messages displayedby the EPG. Viewer Profile information includes identification of thecontent that the viewer has currently highlighted in the EPG or relateddata service. Using this method, the EPG displays differentadvertisements depending upon, e.g., which show the viewer has currentlyhighlighted in the Grid Guide, what sport is highlighted in a sportsdata service, or what type of news is highlighted in a news service(international, local, etc.).

The EPG can select advertisements from various possible locations,including a library of advertisements stored at the viewer's terminal inRAM that have been downloaded through the VBI, stored at the head-end,or accessible through an EPG link to the Internet/World Wide Web. Theadvertisements may be in the form of graphics, text, video clips, audioclips, and combinations thereof. Each advertisement can be assignedtheme codes, profile codes, and other selection intelligence. In oneembodiment, in order to customize the advertising display, the EPGsearches the library of available advertisements to locateadvertisements that match criteria set by the advertisers for “accesscontent,” “adjacent content,” and/or Viewer Profile information. Inanother embodiment, the EPG selects advertisements for display accordingto pre-established selection criteria. In one embodiment, theadvertisements in the library are assigned to themes; the history of useof an on-screen theme menu or program guide is recorded; and the historyis analyzed by the EPG microprocessor to decide which advertisement todisplay.

For example, a particular advertisement for automobiles might beassigned to a sports event theme. In a simple implementation, thisautomobile advertisement would be selected for display, if the users ofthe particular EPG selected sports as a theme more frequently than anyother theme during a prescribed period of time. Selecting a theme bringsup a screen listing, by time, channel, and title, of the programs thatare consistent with the selected theme on a second-level theme screen.The history of use could be recorded in a memory by overwriting theoldest data stored in the memory. If desired, a more sophisticatedanalysis could be used. Thus, the frequency of selection could beweighted to favor more recent selections over older selections or themescould be combined to determine which advertisement to display.

In another embodiment, the advertisements in the library are assigned toparticular television programs or classes of television programs; thehistory of use of the information box of the EPG is recorded, in termsof frequency of the visits, time spent during a single visit, and/ortotal time of all the visits; the information boxes are correlated tothe television programs, and the results are analyzed to decide whichadvertisement to display. Instead of the information box, any other areaof the EPG screen could be monitored in similar fashion to decide whichadvertisement to display. In each case, the advertisements in thelibrary are assigned to the types or subjects of information displayedin the monitored area so as to target better the advertisements to theinterests of the users.

In another embodiment, the advertisements in the library are alsoassigned to particular television programs or classes of televisionprograms in terms of channel and time; the tuner is monitored; thechannel and time are correlated to the television programs, and theresults are analyzed to decide which advertisement to display. Forexample, an advertisement for brand name athletic shoes with a popularbasketball star could be assigned to basketball programs. The shoeadvertisement would be selected for display if the viewer of theparticular EPG entered the EPG while watching a basketball game.

In another embodiment, the advertisements in the library are alsoassigned to particular television programs or classes of televisionprograms; the history of television programs entered into a“record-watch list” is recorded; and the results are analyzed to decidewhich advertisement to display. The time of the monitored event can alsobe taken into account in order to distinguish between multiple users ofthe same EPG or related television receiver. The assumption is that thepeople using the EPG and watching television at different times of theday have different interests—housewives may use the EPG more in themorning, children may use it in the early evenings, and men who workoutside the home may use it on Sunday afternoons.

FIG. 2 is an exemplary embodiment of a remote controller for activatingthe functions of an EPG within a television system. For the purpose ofdescribing the operation of the invention, it is assumed that the remotecontroller sends IR commands to a microprocessor in the televisionsystem that is programmed to carry out the described operations with theaid of a clock. The remote controller has up, down, right, and leftarrows keys for controlling the movement of a cursor on the EPG. Thecursor can select, i.e., highlight, any of the windows and tiles on theEPG by pressing the arrow keys on the remote control. Highlighting iseffectuated by adding a border around the window or changing the colorof the border, if the border is permanent.

Television program data is received by the television system in packetsand stored in the EPG database. The packets are sent via VBI signals andreceived by the television system's microprocessor. A packet containstelevision program schedule information along with routing data thatenables the system to determine how to store the information in memory.

Television program data is stored in data structures within the EPGdatabase that enable the system to interpret the data. Details on thecontent and organization of the packets and the EPG database isdiscussed in more detail in U.S. application Ser. No. 08/987,795,Abandoned, and U.S. Pat. No. 6,239,794 , the contents of which arehereby expressly incorporated by reference.

According to one embodiment of the invention, data structure for storingEPG data includes a pre-established time list and show informationpackages. The pre-established time list is used to locate televisionprogram information for each channel in the system. The pre-establishedtime list only references program information that will be broadcast onthe current day (today) or on the next day (tomorrow).

FIG. 3 is an exemplary illustration of a pre-established time list. Thislist contains a set of twelve pointers 313 for each channel in thesystem. Each pointer corresponds to a show information package thatcontains data for a four hour block of television programming. Forexample, in FIG. 3, the pointer E1 corresponds to program data from fourp.m. to eight p.m. for the first channel. Pointers A2 through L2 areused to represent the program data associated with the second channel inthe system. Twelve pointers represent 24 hours of programminginformation for the current day and 24 hours of program information forthe next day.

Each pointer contains an address of a show information package ofvariable length containing actual television program data. When specificdata is needed, the system first looks in the pre-established time listto secure the pointer, then uses the address found in that location todetermine where the data is actually stored. For example, if data forthe second channel in the system is needed for a television programbetween eight p.m. and twelve midnight, the system uses the address inpointer F2 to determine the location of the show information packagecontaining the data.

Show information packages are variable length data structures thatcontain actual television program schedule data. Each show informationpackage contains data for a four hour block of television programmingfor a specific channel. The show information package length is variablebecause the number of shows in each four hour block depend on thedurations of the individual shows.

FIG. 4 depicts a show information package. The show information packagecontains the following: amount of memory—used to determine how muchspace was used to store the show information package and therefore, howmuch space is freed up after the show information package is no longerneeded; control date—used to determine whether the data in a specificshow information package is for the current day, the next day, oroutside of the current two-day window; and version number-used tospecify the specific version of the program data.

Following these three fields is specific data for each show that fitswithin the four-hour time block. For a given show, represented by block314, the following fields are present in the show information package:multiple show flag field—used to determine if this show is the last showwithin the package, or if there are other shows following to beprocessed; start time field—an offset from the start time of thefour-hour block, this offset is added to the time of the four-hour blockto determine the start time of the show; duration field—specifies theair time for the particular show; theme field—contains information onthe type of show; for example, the show may be a sporting event, a newsprogram, or a movie; CC field determines whether or not the show isclosed captioned; stereo field—determines whether or not the show isbroadcast in stereo; add-ons field—is a field left for expansion, thisfield contains more information about the show as that informationbecomes standard in the art.

Following these fields are fields representing program title, primarydescription—a short description of the program, secondary description—alonger description of the program and VCR+PLUSCODE. Each of these itemsare represented by two fields, one containing the length of a specificitem, such as title length, and one containing the item itself, such astitle.

Following this information is an end-of-show field. The end-of-showfield is used to indicate that the information for that particular showis finished. A show information package may contain information for oneor more shows depending on how many shows are broadcast within the fourhour block. The presence of multiple shows is represented by 315 and316.

FIG. 5 illustrates the organization of program schedule informationaccording to an alternative embodiment of the present invention. Asshown in FIG. 5, the database is structured internally as schedule datastructures and theme data structures linked by handles and handletables. Each handle is an index to a handle table which containspointers to blocks of memory where structures of the database arestored.

The hierarchy for the schedule data structures, in descending order isas follows:

Channel Data Table: contains subscriber unit's list of channels; ShowList: contains time slots for each show scheduled to be broadcast for achannel; Show Title: contains the title text and show title attributes;Show Description: contains show's ratings, attributes, and descriptiontext.

A channel data table, depicted in FIG. 6, is typically the highest datastructure in the hierarchy. This table includes an entry for eachchannel received by the television unit. The entries in the channel datatable are changed infrequently and are determined by the location of thetelevision unit and type of services received. The location of thetelevision unit is entered into the television's memory during set up,when the user is requested to provide a zip code of the area where thetelevision is located. Each channel data table entry includesinformation concerning the channel and a handle to a show list handletable for the channel.

The next data structure in the hierarchy is a show list as depicted inFIG. 7. The show list includes a start time, typically being midnightGMT, and 24 hours of scheduling. The channel's schedule is given by anordered sequence of show slots, with a show slot for each show to bebroadcast by a particular channel for a particular day. Each slotincludes a duration, show title handle, and show description handle.Finding an entry corresponding to a given start time requires scanningthe entries, in order, from the beginning of the show list and addingduration values.

In one embodiment, the database, when fully constructed, holds a week'sworth of show lists for each channel. The days of the week are accessedby incrementing the show list handle by two bytes. The show lists areupdated each day at midnight GMT with the show list for the day justcompleted being deleted and the show list for the same day next weekbeing added to the database.

The next data structures in the schedule hierarchy are the show titleentries, depicted in FIG. 8, and the show description entries, depictedin FIG. 9. For a given show slot, the show title entry and showdescription entry are accessed utilizing the handles included in theslot. The show title and show description entries are stored in a memorypool divided into blocks. Each show title is identified by a unique showidentification number (SID), and each show description is identified bya unique number assigned at the head end. The show title handles arebased on the SID and the show title handles are offsets into a showtitle handle table. The entry in the show title table accessed by aparticular show title handle includes the address of the first block inthe memory pool where the show title entry is stored. Similarly, theshow description handle table entry accessed by a show descriptionhandle stores the address of the first block in the memory pool wherethe show description entry is stored.

As with television programming data, the television system also receivesadvertisement data in packets. The advertisement data is then stored inan advertisement (ad) database. The advertisements generally relate tofuture television programs. However, a person skilled in the art shouldrecognize that the advertisements may also relate to general products,services and the like, and are not limited to future programmingadvertisements.

The advertisement data packets, according to one embodiment of theinvention, comprise a scheduling component and a program component. Thetwo components are transmitted by an information broadcasting system.FIG. 10 is an exemplary illustration of the scheduling component. Asillustrated in FIG. 10, the scheduling component includes a Start Timeand 24 hours worth of ad schedules. The Start Time is the time in whichthe advertisements are to be displayed, and can be any time during theday. Generally speaking, however, the Start Time of the ads is 12:00 am.

Following the Start Time is a Duration field and an Ad ID for eachscheduled ad. The Duration field indicates the period for which aparticular ad is to be displayed. In one embodiment, ad durations mayrange from 5 minutes to 24 hours. The Ad ID is utilized to access the adcopy (text & graphics) for a particular ad.

In addition to the schedule component, the information broadcastingsystem also transmits a program component. The program component allowsthe television system to link to an advertised show. FIG. 11 illustratesa program component according to one embodiment of the invention. Asillustrated in FIG. 11, the program component includes an Ad ID, a GuideChannel, Start Time, and Duration. The Ad ID allows the Guide Channel,Start Time, and Duration fields to be associated with a particularadvertisement. The television system utilizes the Guide Channel to findthe program schedule information for that channel. The Start Time andDuration fields are used to find a particular program broadcast by thechannel.

According to one embodiment, the Guide Channel, Start Time, and Durationinformation are transmitted in the order the advertisements arescheduled. For instance, the first Guide Channel, Start Time, andDuration are associated with the first scheduled advertisement, thesecond Guide Channel, Start Time, and Duration are associated with thesecond scheduled advertisement, and so forth. Thus, according to thisalternative embodiment, the information broadcasting system need nottransmit the corresponding Ad IDs.

FIG. 12 is an illustration of how information is retrieved from the adand EPG databases. Beginning at the Start Time, the television systemretrieves an Ad ID (Ad ID1 in this example), and locates thecorresponding ad copy in the advertisement database. Each ad copyincludes a text field and a pointer to a logo/graphics. The text fieldcontains special tags which serve as placeholders for particular values.These placeholders might reserve space in the ad copy for the air timeof an advertised show, an episode's title/description, or any otherinformation available from the EPG database. Accordingly, advertisementsmay be modified based on the information stored in the EPG database, andit no longer becomes necessary to create new advertisements fordifferent time zones or different episode descriptions.

The ad entry further includes a pointer to an ad logo, if appropriate.The ad logo includes a graphics file of a logo (e.g., the NBC logo) orany other graphics data that is to be displayed with the ad. Thetelevision system utilizes the program component to link advertisementsto the corresponding television programs. This allows the televisionsystem to insert the appropriate information into the placeholders ofthe text of an advertisement. In addition, the linking of programs toadvertisements allows a viewer to schedule a show for watching orviewing directly from the advertisement.

In linking advertisements to corresponding television programs accordingto one embodiment of the invention, the Guide Channel of the programcomponent is used to locate a map of pointers for a particular channel,each pointer corresponding to a show information package that containsdata for a four-hour block of television programming for that particularchannel. The Duration field allows the system to retrieve a particularprogram information within in a show information package. When theparticular program is located, the television system retrieves valuesnecessary for inserting information into the placeholders of thecorresponding advertisement. For instance, the program description maybe retrieved from the show information package and inserted into aprogram description placeholder within the ad. Furthermore, the time inwhich the program is to air may be retrieved and inserted into anair-time placeholder.

According to one embodiment, the EPG database contains programminginformation for an entire week. In this case, the Guide Channel is usedto locate a showlist handle table with a handle to a showlist for aparticular channel for the current day. The Start Time and Durationfields are used to locate the appropriate show description entry.

In another embodiment of the invention, the program component is notsent as a packet, but is created within the television system based oninformation transmitted with the advertisements in the schedulingcomponent. According to this embodiment, the information broadcastingsystem transmits with the scheduling component, the title of the programbeing searched for, a time range in which the show will be broadcast,and a network station indicator for finding the network stationbroadcasting the program. For instance, the ad may contain instructionsto “link to NBC show ‘Friends’ on Thursday evening.” With thisinformation, the television system searches the EPG database for theshow ‘Friends,’ and creates the program component for the correspondingad. In this way, a television system capable of tuning to multiple NBCaffiliates would select the channel of the NBC affiliate which thetelevision system is in fact tuned to.

While the invention has been described with respect to particularillustrated embodiment, those skilled in the art and technology to whichthe invention pertains will have no difficulty devising variations whichin no way depart from the spirit of the invention. For example, whilethe illustrated embodiments have been described in connection withmodifying time and program descriptions for an advertisement of a futuretelevision program, it will be appreciated that other types ofadvertisement information may be modified if desired.

In addition, the modified advertisements may not only pertain to futuretelevision programs, but may be advertisements for any type of productsor services. Information related to the advertised product and/orservice, such as price, telephone number, point of sales, web siteaddress, dates of promotions, and the like may also be modified based onthe information stored in the EPG database. For example, if the web siteaddress of a product distributer is changed, only the new web siteaddress needs to be transmitted and then inserted to the appropriatefield of the stored advertisement when it is displayed in the EPG.Alternatively, the web site address may be retrieved form the EPGdatabase and combined with a portion of the stored advertisement. Inanother example, the advertisement rotation information such as startingtime and duration, and frequency of display can be retrieved from theEPG database and combined with the advertisement content stored in thead database for displaying in the EPG.

It will be recognized by those skilled in the art that variousmodifications may be made to the illustrated and other embodiments ofthe invention described above, without departing from the broadinventive scope thereof. It will be understood therefore that theinvention is not limited to the particular embodiments or arrangementsdisclosed, but is rather intended to cover any changes, adaptations ormodifications which are within the scope and spirit of the invention asdefined by the appended claims.

1. A method for displaying an advertisement in an electronic programguide (EPG) comprising the steps of: storing television scheduleinformation including time, date, and channel information for aplurality of television programs in a television schedule informationdatabase local to a viewer; local to the viewer, receiving a telecastadvertisement via a television signal, wherein the telecastadvertisement comprises a first plurality of advertisement informationfor a television program; local to the viewer, selecting a secondplurality of advertisement information from the local televisionschedule information database including one or more of the time, date,and channel information for the television program; local to the viewer,inserting the second plurality of advertisement information into thereceived telecast advertisement to form a modified advertisement; anddisplaying the modified advertisement in the EPG on a screen, whereindisplaying the modified advertisement comprises displaying the firstplurality of advertisement information and the second plurality ofadvertisement information.
 2. The method of claim 1, wherein thereceiving, selecting, inserting, and displaying steps are performed insubstantially real time.
 3. The method of claim 1, wherein the receivingstep comprises receiving promotional information about a futuretelevision program.
 4. The method of claim 1, wherein the receiving stepcomprises receiving promotional information about a currently telecasttelevision program.
 5. The method of claim 1, wherein the receiving stepcomprises receiving promotional information about one or more of aproduct and a service.
 6. The method of claim 1, wherein the storingstep comprises storing a program description and the inserting stepcomprises combining a portion of the received advertisement informationwith the stored program description.
 7. The method of claim 1, whereinthe storing step comprises storing a web site address and the insertingstep comprises combining a portion of the received advertisementinformation with the stored web site address.
 8. The method of claim 1,wherein the storing step comprises storing information related torotating advertisement information in the EPG and the inserting stepcomprises combining a portion of the received advertisement informationwith the information related to rotating advertisement information. 9.The method of claim 8 further comprising displaying the modifiedadvertisement image in the EPG based on the rotating information. 10.The method of claim 3, wherein the promotional information is a videopreview related to the future television program.
 11. The method ofclaim 5, wherein the promotional information is a video preview relatedto the one or more of a product and a service.
 12. The method of claim 1further comprising the steps of selecting the displayed informationusing a pointing device and activating a function related to theselected information.
 13. The method of claim 12, wherein the step ofactivating a function comprises linking to a web site based on anaddress related to the selected information and displaying moreinformation from the web site.
 14. The method of claim 12, wherein thestep of activating a function comprises displaying more detailinformation related to the selected information.
 15. The method of claim12, wherein the step of activating a function comprises scheduling afuture television program for recording.
 16. The method of claim 12,wherein the step of activating a function comprises tuning to acurrently telecast television program.
 17. An interactive electronicprogram guide (EPG) system comprising: a first database local to aviewer for storing television schedule information including time, date,and channel information for a plurality of television programs; a seconddatabase local to the viewer for storing advertisement data, wherein thesecond database includes a first plurality of advertisement informationfor a television program and the first database includes a pointerassociated with an entry in the second database so that one or more ofthe time, date, and channel information for the television program areselected as a second plurality of advertisement information and insertedinto a respective advertisement data associated with the entry in thesecond database to form a modified advertisement; and a display screenfor displaying the modified advertisement, wherein the modifiedadvertisement displayed on the display screen comprises the firstplurality of advertisement information and the second plurality ofadvertisement information.
 18. The EPG of claim 17, wherein theadvertisement data is promotional information about a future televisionprogram.
 19. The EPG of claim 17, wherein the advertisement data ispromotional information about a currently telecast television program.20. The EPG of claim 17, wherein the advertisement data is promotionalinformation about one or more of a product and a service.
 21. The EPG ofclaim 17, wherein the first database includes a program description forcombining a portion of the advertisement data with the stored programdescription.
 22. The EPG of claim 17, wherein the first databaseincludes a web site address for combining a portion of the advertisementdata with the stored web site address.
 23. The EPG of claim 17, whereinthe first database includes information related to rotatingadvertisement information in the EPG for combining a portion of theadvertisement data with the information related to rotatingadvertisement information.
 24. The EPG of claim 18, wherein thepromotional information is a video preview related to the futuretelevision program.
 25. The EPG of claim 20, wherein the promotionalinformation is a video preview related to the one or more of a productand a service.
 26. The EPG of claim 17 further comprising an inputdevice for selecting the displayed advertisement and activating afunction related to the selected advertisement.
 27. The EPG of claim 26,wherein the input device activates a function to link to a web sitebased on an address related to the selected advertisement.
 28. The EPGof claim 26, wherein the input device activates a function to displaymore detail information related to the selected advertisement.
 29. TheEPG of claim 26, wherein the input device activates a function toschedule a future television program for recording.
 30. The EPG of claim26, wherein the input device activates a function to tune to a currentlytelecast television program.
 31. The EPG of claim 26, wherein the inputdevice activates a function to display a video preview related to theselected advertisement.
 32. A computer readable medium having storedthereon a set of instructions including instruction for displaying anadvertisement in an electronic program guide (EPG), the instructions,when executed by a microprocessor, cause the microprocessor to performthe steps of: storing television schedule information including time,date, and channel information for a plurality of television programs ina television schedule information database local to a viewer; local tothe viewer, receiving a telecast advertisement via a television signal,wherein the telecast advertisement comprises a first plurality ofadvertisement information for a television program; local to the viewer,selecting a second plurality of advertisement information from the localtelevision schedule information database including one or more of thetime, date, and channel information for the television program; local tothe viewer, inserting the second plurality of advertisement informationinto the received telecast advertisement to form a modifiedadvertisement; and displaying the modified advertisement in the EPG on ascreen, wherein displaying the modified advertisement comprisesdisplaying the first plurality of advertisement information and thesecond plurality of information.
 33. The method of claim 1, wherein thereceived telecast advertisement further includes one or moreplaceholders and wherein inserting the second plurality of advertisementinformation into the received telecast advertisement comprises insertingthe second plurality of advertisement information into the one or moreplaceholders, and wherein displaying the modified advertisementcomprises displaying the second plurality of information within the oneor more placeholders.
 34. The method of claim 1, wherein the selectingthe second plurality of advertisement information comprises selectingthe second plurality of advertisement information from the localtelevision schedule information database based on the geographiclocation of the viewer.
 35. The system of claim 17, wherein the storedadvertisement data further includes one or more placeholders and whereininserting the second plurality of advertisement information comprisesinserting the second plurality of advertisement information into the oneor more placeholders, and wherein the modified advertisement displayedon the display screen comprises the second advertising informationwithin the one or more placeholders.
 36. The system of claim 17, whereinthe selecting the second plurality of advertisement informationcomprises selecting the second plurality of advertisement informationfrom the first database based on the geographic location of the viewer.37. The computer readable medium of claim 32, wherein the receivedtelecast advertisement further includes one or more placeholders andwherein inserting the second plurality of advertisement information intothe received telecast advertisement comprises inserting the secondplurality of advertisement information into the one or moreplaceholders, and wherein displaying the modified advertisementcomprises displaying the second plurality of advertising informationwithin the one or more placeholders.
 38. The computer readable medium ofclaim 32, wherein the selecting the second plurality of advertisementinformation comprises selecting the second plurality of advertisementinformation from the local television schedule information databasebased on the geographic location of the viewer.